﻿/**
 *
 * @file PhysicsDialogUniform.h
 * @brief  均质板物理属性对话框声明
 * @author wangning (2185896382@qq.com)
 * @date 2024-12-11
 *
 */
#ifndef __GUIPhysicsDialogUniform_H__
#define __GUIPhysicsDialogUniform_H__

#include "AbstractPhysicsDialog.h"

namespace Ui
{
    class PhysicsDialogUniform;
}
namespace GUI
{
    /**
     * @brief  均质板物理属性对话框声明
     * @author wangning (2185896382@qq.com)
     * @date 2024-12-11
     */
    class GUIPhyscisDialogAPI PhysicsDialogUniform : public AbstractMaterialDialog
    {
        Q_OBJECT
    public:
        /**
         * @brief Construct a new Physics Property Uniform Dialog object
         * @param[i]  type           操作类型
         * @param[i]  propid          物理属性ID
         * @param[i]  parent         父对象
         * @author wangning (2185896382@qq.com)
         * @date 2024-12-11
         */
        explicit PhysicsDialogUniform(PhysicsDlgExecType type, int propid = -1, QWidget* parent = nullptr);
        /**
         * @brief Destroy the Physics Property Uniform Dialog object
         * @author wangning (2185896382@qq.com)
         * @date 2024-12-11
         */
        virtual ~PhysicsDialogUniform();

    private slots:
        /**
         * @brief 确认按钮点击事件
         * @author LiBaojun (libaojunqd@foxmail.com)
         * @date 2024-12-06
         */
        void on_pushButtonOK_clicked();
        /**
         * @brief 取消按钮点击事件
         * @author LiBaojun (libaojunqd@foxmail.com)
         * @date 2024-12-06
         */
        void on_pushButtonCancel_clicked();
    private:
        /**
         * @brief 初始化窗口
         * @author LiBaojun (libaojunqd@foxmail.com)
         * @date 2024-12-06
         */
        void init();
        /**
         * @brief 检查输入
         * @return true  输入没有错误
         * @return false  输入有错误
         * @author LiBaojun (libaojunqd@foxmail.com)
         * @date 2024-12-06
         */
        bool checkInput();

    private:
        /**
         * @brief UI对象
         * @author LiBaojun (libaojunqd@foxmail.com)
         * @date 2024-12-06
         */
        Ui::PhysicsDialogUniform *_ui{};
    };
}
#endif


